home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / newsgroups / misc.19950528-19950726 / 000144_news@columbia.edu_Sat Jun 17 15:55:58 1995.msg < prev    next >
Internet Message Format  |  2020-01-01  |  4KB

  1. Received: from apakabar.cc.columbia.edu by watsun.cc.columbia.edu with SMTP id AA17812
  2.   (5.65c+CU/IDA-1.4.4/HLK for <kermit.misc@watsun.cc.columbia.edu>); Sat, 17 Jun 1995 11:56:03 -0400
  3. Received: by apakabar.cc.columbia.edu id AA13272
  4.   (5.65c+CU/IDA-1.4.4/HLK for kermit.misc@watsun); Sat, 17 Jun 1995 11:56:02 -0400
  5. Path: news.columbia.edu!watsun.cc.columbia.edu!fdc
  6. From: fdc@watsun.cc.columbia.edu (Frank da Cruz)
  7. Newsgroups: comp.protocols.kermit.misc
  8. Subject: Re: Ckermit for Unix and VTKeys
  9. Date: 17 Jun 1995 15:55:58 GMT
  10. Organization: Columbia University, New York City
  11. Lines: 68
  12. Message-Id: <3rutue$cum@apakabar.cc.columbia.edu>
  13. References: <1995Jun15.035925.13393@mercury.ncat.edu>
  14. Nntp-Posting-Host: watsun.cc.columbia.edu
  15. Apparently-To: kermit.misc@watsun.cc.columbia.edu
  16.  
  17. In article <1995Jun15.035925.13393@mercury.ncat.edu>,
  18.  <hkennedy@mercury.ncat.edu> wrote:
  19. >I using Ckermit with Linux, and CKermit is not sending the correct key
  20. >strings for PF1 and PF2. I looked in the manual it just said make sure that
  21. >the correct emulation is in effect, and the have the key assignments
  22. >correct for VT300 emulation in the X-Term session.
  23. >
  24. >Of intereset when using "show key" the only the first part of the key
  25. >string is shown in the case of PF1 only \27 the other part is on the next
  26. >line with the Ckermit prompt.
  27. >
  28. >Is it possible to use VT key emulation in a connect session with Ckermit
  29. >for Unix (I'm using Linux).
  30. >
  31. Time to add this one to the FAQ.
  32.  
  33. C-Kermit comes in basically two varieties:
  34.  
  35.  . The version for OS/2 that had direct access to the keyboard and screen,
  36.    and therefore can see keyboard scan codes and so on, and can do true
  37.    terminal emulation.  Here you have comprehensive key mapping ability.
  38.  
  39.  . The versions for UNIX, VMS, and so on, that do not have direct access
  40.    to the keyboard and screen, and rely on your console driver, terminal
  41.    window, external terminal emulator (such as MS-DOS Kermit), or actual
  42.    terminal to perform the terminal functions.
  43.  
  44. UNIX is an interesting case.  Traditionally, UNIX was accessed through a
  45. terminal that was plugged into a terminal port on a timesharing system.
  46. Thus, there *is* no keyboard and screen -- just a communication port.  In
  47. recent years, this type of access has been largely replaced by terminal
  48. servers, but there is still no keyboard and screen.  However, now that we
  49. have a plethora of PC-based UNIX varieties that run on workstations (PCs)
  50. that actually *do* have a keyboard and screen, it would seem to make sense
  51. that Kermit should be able to see all the keys.
  52.  
  53. Unfortunately, this is not the case.  Most varieties of UNIX do not let
  54. the application see the keyboard.  There is no kernel function called "get
  55. keyboard scan code".  There is only read(), and read() reads a character,
  56. not a multibyte scan code.  Thus, even if your console driver has
  57. programmed (say) your F1 key to send (say) ESC O P, Kermit will read three
  58. characters in succession, as if they were three keystrokes, not one.  It
  59. has no way of knowing that you pressed the F1 key.  As far Kermit knows,
  60. you pressed the Esc key, then the O key, then the P key.
  61.  
  62. Now perhaps Linux *does* have a system call to let an application at the
  63. keyboard.  But...
  64.  
  65.  (a) In what contexts does it work?  Only on the raw console?  In an xterm
  66.      window?  etc etc.
  67.  
  68.  (b) Does it require special privilege to execute?
  69.  
  70.  (c) What about all the other versions of UNIX that run on PCs -- FreeBSD,
  71.      SCO, Solaris/Intel, etc etc?
  72.  
  73.  (d) What about all the other versions of UNIX that run on non-PC
  74.      workstations -- SunOS, Solaris/Sparc, HP-UX, AIX, SGI, etc?
  75.  
  76. So the answer is, for now at least -- and as the documentation states --
  77. C-Kermit's SET KEY command in UNIX (and VMS, AOS/VS, VOS, etc) works only
  78. for keys that generate a single 8-bit value, 0..255.  Other types of
  79. mappings will have to be accomplished outside of Kermit by configuring
  80. your console driver, your xterm (e.g. with Xmodmap), and so on.
  81.  
  82. I'll add this to FAQ.
  83.  
  84. - Frank